15 research outputs found

    La independencia, fuente de dependencia del sistema universitario

    Get PDF
    Tomado del libro "La Reproduction, Éléments pour une théorie du système d'enseignement

    Non regression testing for the JOREK code

    Get PDF
    Non Regression Testing (NRT) aims to check if software modifications result in undesired behaviour. Suppose the behaviour of the application previously known, this kind of test makes it possible to identify an eventual regression, a bug. Improving and tuning a parallel code can be a time-consuming and difficult task, especially whenever people from different scientific fields interact closely. The JOREK code aims at investing Magnetohydrodynamic (MHD) instabilities in a Tokamak plasma. This paper describes the NRT procedure that has been tuned for this simulation code. Automation of the NRT is one keypoint to keeping the code healthy in a source code repository.Comment: No. RR-8134 (2012

    Scaling GYSELA code beyond 32K-cores on Blue Gene/Q

    Get PDF
    International audienceGyrokinetic simulations lead to huge computational needs. Up to now, the semi- Lagrangian code Gysela performed large simulations using a few thousands cores (8k cores typically). Simulation with finer resolutions and with kinetic electrons are expected to increase those needs by a huge factor, providing a good example of applications requiring Exascale machines. This paper presents our work to improve Gysela in order to target an architecture that presents one possible way towards Exascale: the Blue Gene/Q. After analyzing the limitations of the code on this architecture, we have implemented three kinds of improvement: computational performance improvements, memory consumption improvements and disk i/o improvements. As a result, we show that the code now scales beyond 32k cores with much improved performances. This will make it possible to target the most powerful machines available and thus handle much larger physical cases.Les simulations gyrocinétiques ont des coûts en calcul extrêmement importants. Jusqu'à maitenant, le code semi-Lagrangien Gysela réalisait de grandes simulations en employant quelques milliers de cœurs (8k cœurs typiquement). Il est prévu que des simulations à grain plus fin et incluant les électrons cinétiques augmentent ces besoins d'un facteur important, fournissant un exemple d'application nécessitant des machines Exascale. Ce papier présente notre travail pour améliorer Gysela afin de viser une architecture qui offre une direction possible vers l'Exascale : la Blue Gene/Q. Après avoir analysé les limitations du code sur cette architecture, nous avons mis en œuvre trois types d'améliorations : des améliorations de performances de calcul, des améliorations de consomation mémoire et des améliorations d'E/S disque. Nous montrons que suite à ces travaux, le code monte en charge au delà de 32k cœurs avec des performances bien améliorées. Il devient ainsi possible de viser les machines les plus performantes disponibles et de gérer des cas physiques nettement plus grands

    An approach to increase reliability of HPC simulation, application to the G

    No full text
    Reproducibility of results is a strong requirement in most fields of research for experimental results to be called science. For results obtained through simulation software using high performance computing (HPC) this translates as code quality requirements. While there are many works focusing on software quality, these typically do not take the specificities of HPC scientific simulation softwareinto account. This paper presents an approach to introduce quality procedures in HPC scientific simulation softwarewhile remaining the less invasive as possible so as to ease its adoption. The approach relies on quality procedures including human code review and automated testing and offers a dedicated procedure to help correct defects found this way. These procedures are integrated in a development work-flow designed to improve the traceability of defects. By implementing this approach for the development of the Gysel

    An approach to increase reliability of HPC simulation, application to the Gysela5D code***

    No full text
    Reproducibility of results is a strong requirement in most fields of research for experimental results to be called science. For results obtained through simulation software using high performance computing (HPC) this translates as code quality requirements. While there are many works focusing on software quality, these typically do not take the specificities of HPC scientific simulation softwareinto account. This paper presents an approach to introduce quality procedures in HPC scientific simulation softwarewhile remaining the less invasive as possible so as to ease its adoption. The approach relies on quality procedures including human code review and automated testing and offers a dedicated procedure to help correct defects found this way. These procedures are integrated in a development work-flow designed to improve the traceability of defects. By implementing this approach for the development of the Gysela code, we show that it is indeed viable and that the return on investment is positive. We also identify multiple reusable elements developed for this experiment that should reduce the cost of adopting the approach for other codes as well as some aspects that can still be improved to ensure a widespread propagation of the approach in the community

    An approach to increase reliability of hpc simulation, application to the GYSELA5D Code

    Get PDF
    International audienceReproducibility of results is a strong requirement in most fields of research for experimental results to be called science. For results obtained through simulation software using high performance computing (HPC) this translates as code quality requirements. While there are many works focusing on software quality, these typically do not take the specificities of HPC scientific simulation software into account. This paper presents an approach to introduce quality procedures in HPC scientific simulation software while remaining the less invasive as possible so as to ease its adoption. The approach relies on quality procedures including human code review and automated testing and offers a dedicated procedure to help correct defects found this way. These procedures are integrated in a development work-flow designed to improve the traceability of defects. By implementing this approach for the development of the Gysela code, we show that it is indeed viable and that the return on investment is positive. We also identify multiple reusable elements developed for this experiment that should reduce the cost of adopting the approach for other codes as well as some aspects that can still be improved to ensure a widespread propagation of the approach in the community

    Building and Auto-Tuning Computing Kernels: Experimenting with BOAST and StarPU in the GYSELA Code

    Get PDF
    International audienceModeling turbulent transport is a major goal in order to predict confinement performance in a tokamak plasma. The gyrokinetic framework considers a computational domain in five dimensions to look at kinetic issues in a plasma; this leads to huge computational needs. Therefore, optimization of the code is an especially important aspect, especially since coprocessors and complex manycore architectures are foreseen as building blocks for Exascale systems. This project aims to evaluate the applicability of two auto-tuning approaches with the BOAST and StarPU tools on the gysela code in order to circumvent performance portability issues. A specific computation intensive kernel is considered in order to evaluate the benefit of these methods. StarPU enables to match the performance and even sometimes outperform the hand-optimized version of the code while leaving scheduling choices to an automated process. BOAST on the other hand reveals to be well suited to get a gain in terms of execution time on four architectures. Speedups in-between 1.9 and 5.7 are obtained on a cornerstone computation intensive kernel

    Building and Auto-Tuning Computing Kernels: Experimenting with Boast and Starpu in the Gysela Code★

    No full text
    Modeling turbulent transport is a major goal in order to predict confinement performance in a tokamak plasma. The gyrokinetic framework considers a computational domain in five dimensions to look at kinetic issues in a plasma; this leads to huge computational needs. Therefore, optimization of the code is an especially important aspect, especially since coprocessors and complex manycore architectures are foreseen as building blocks for Exascale systems. This project aims to evaluate the applicability of two auto-tuning approaches with the BOAST and StarPU tools on the GYSELA code in order to circumvent performance portability issues. A specific computation intensive kernel is considered in order to evaluate the benefit of these methods. StarPU enables to match the performance and even sometimes outperform the hand-optimized version of the code while leaving scheduling choices to an automated process. BOAST on the other hand reveals to be well suited to get a gain in terms of execution time on four architectures. Speedups in-between 1.9 and 5.7 are obtained on a cornerstone computation intensive kernel

    A multi-species collisional operator for full-F global gyrokinetics codes : Numerical aspects and validation with the GYSELA code

    Get PDF
    A linearized multi-species collision operator valid for arbitrary masses and charges has been developed and implemented in the gyrokinetic code GYSELA [9]. This operator has all the required properties : it conserves particles, total momentum and energy, fulfills the Boltzmann H theorem and recovers neoclassical results. This operator takes into account both pitch angle scattering and energy diffusion while operting in the v , µ phase space. Derivatives with respect to the magnetic moment are treated using a projection on a set of orthogonal polynomials. The numerical aspects of the implementation are detailed and a set of physical benchmarks allows a verification of the properties of the operator
    corecore